//导入axois
import axios from "axios"
import store from '@/store/index'

// 请求拦截器：
// 使用场景：需要在请求的时候设置全局的超时时间、设置比较统一的请求头等
axios.interceptors.request.use((config)=>{
    //当请求用户信息时 请求头需要设置token 
     // 拦截下来
    // 在这里增加上额外需要的处理，比如加头信息、加全局配置。。。
    // 追加头信息
    let _token = store.state.common._token;
    if(_token)
    {
        config.headers['Authorization'] = _token;
    }
    return config
})
//对axios进行封装
// 以往在学习使用axios的时候每次取获取数据的结果都是从ret.data中获取
// 这种写法很是不方便，我们可以在此处对axios进行改造，让返回的ret就等同于以前的ret.data
// 拦截器：此处是对返回结果其实就是响应进行处理，所以得使用响应拦截器
axios.interceptors.response.use((req)=>{
        // //建议在拦截器中判断是否有token 如果有则直接储存
        // if(req.data._token)
        // //储存在vuex中
        // store.commit('common/setToken',req.data._token)



    return req.data || req;
})

export default axios